﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace StableDiffusionTools.Progress
{
    public delegate void UpdateTimerEvent(object sender, UpdateTimerEventArgs e);

    public class UpdateTimerEventArgs : EventArgs
    {
        public TimeSpan Delta { get; private set; }
        public TimeSpan Elapsed { get; private set; }
        public object State { get; private set; }
        public UpdateTimerEventArgs(TimeSpan delta, TimeSpan elapsed, object state)
        {
            Delta = delta;
            Elapsed = elapsed;
            State = state;
        }
        public override string ToString()
        {
            return string.Format("State: {0} Delta: {1} Elapsed: {2}", State, Delta, Elapsed);
        }
    }
}
